package com.integral.biz.impl;

import java.util.List;

import javax.annotation.Resource;

import org.springframework.stereotype.Service;

import com.integral.biz.ISignBiz;
import com.integral.entity.Sign;
import com.integral.service.SignService;
import com.integral.vo.SignVo;

/**
 * @Description: BIZ实现类
 * @author zhaofan
 * @date 2018年12月23日 下午08:49:32
 */
@Service("signBiz")
public class SignBiz implements ISignBiz {
	
	/**
	 * 注入Service
	 */
	@Resource
	private SignService signService;
	
	/**
	 * @Description: 新增
	 * @param sign
	 * @return 受影响行数
	 * @author zhaofan
	 * @date 2018年12月23日 下午08:49:32
	 */
	public int addSign(Sign sign) {
		return signService.addSign(sign);
	}
	
	/**
	 * @Description: 修改
	 * @param sign 
	 * @return 受影响行数
	 * @author zhaofan
	 * @date 2018年12月23日 下午08:49:32
	 */
	public int updateSign(Sign sign) {
		return signService.updateById(sign);
	}
	
	/**
	 * @Description: 删除
	 * @param id 主键
	 * @return 受影响行数
	 * @author zhaofan
	 * @date 2018年12月23日 下午08:49:32
	 */
	public int deleteSign(Long id) {
		return signService.deleteById(id);
	}
	
	/**
	 * @Description: 根据ID查询
	 * @param id 主键
	 * @return 
	 * @author zhaofan
	 * @date 2018年12月23日 下午08:49:32
	 */
	@Override
	public Sign findById(Long id) {
		return signService.findById(id);
	}
	
	/**
	 * @Description: 分页查询
	 * @param signVo 
	 * @param page 分页参数
	 * @return 
	 * @author zhaofan
	 * @date 2018年12月23日 下午08:49:32
	 */
	public List<SignVo> findByPagination(SignVo signVo) {
		List<SignVo> pagination = signService.findByPagination(signVo);
		return pagination;
	}
	/**
	 * 根据打卡编码查询打卡任务
	 * @param signCode
	 * @return
	 */
	public SignVo findBySignCode(String signCode){
		return signService.findBySignCode(signCode);
	}
	/**
	 * 根据用户编码查询
	 * @param openId
	 * @return
	 */
	public List<SignVo> findBySignOpenId(String openId){
		return signService.findBySignOpenId(openId);
	}
	/**
	 * 根据打卡编码修改打卡次数+1
	 * @param signCode
	 * @return
	 */
	public int updateSignNumBySignCode(String signCode){
		return signService.updateSignNumBySignCode(signCode);
	}
	/**
	 * 根据打卡编码修改打卡状态
	 * @param signVo
	 * @return
	 */
	public int updateStatusBySignCode(SignVo signVo){
		return signService.updateStatusBySignCode(signVo);
	}
	/**
	 * 获取总排行
	 * @return
	 */
	public List<SignVo> findSignAll(){
		return signService.findSignAll();
	}
	/**
	 * 获取当日排行
	 * @return
	 */
	public List<SignVo> findSignToday(){
		return signService.findSignToday();
	}
}